home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Dr. Windows 3
/
dr win3.zip
/
dr win3
/
DEMONSTR
/
ATEASY_1.ZIP
/
ATEASY.MS_
/
ATEASY.MS
Wrap
Text File
|
1993-07-25
|
36KB
|
1,025 lines
'**************************************************************************
'
' PROGRAM : ATEASY Setup
'
' MODULE : ateasy.mst
'
' PROGRAMMER : Ronnie Yazma
'
' PURPOSE : ATEasy setup script file.
'
' Copyright (c) 1993 GEOTEST Inc. All Rights Reserved.
'
'**************************************************************************
'$DEFINE DEBUG ''Define for script development/debugging
'$INCLUDE 'setupapi.inc'
'$INCLUDE 'msdetect.inc'
DECLARE SUB MessageBeep LIB "User" (hwnd%)
''Dialog ID's
CONST IDD_ASKQUIT = 200
CONST IDD_DESTPATH = 300
CONST IDD_EXITFAILURE = 400
CONST IDD_EXITQUIT = 600
CONST IDD_EXITSUCCESS = 700
CONST IDD_EXITDEMO = 800
CONST IDD_APPHELP = 900
CONST IDD_UPGRADE = 1000
CONST IDD_DRIVERS = 1100
CONST IDD_EXAMPLES = 1200
CONST IDD_GPIB = 1300
CONST IDD_GPIBCEC = 1400
CONST IDD_GPIBHP = 1500
CONST IDD_GPIBNI = 1600
CONST IDD_VXINI = 1700
CONST IDD_VXI = 1800
CONST IDD_ASKQUIT1 = 2000
CONST IDD_GETSRCDIR = 2200
CONST IDD_CUSTINST = 6200
CONST IDD_TOOBIG = 6300
CONST IDD_BADPATH = 6400
''Bitmap ID
CONST LOGO = 1
''Text list
CONST ID_APP = 1
CONST ID_DRIVERS = 2
CONST ID_EXAMPLES = 3
CONST ID_GPIB = 4
CONST ID_VXI = 5
CONST ID_APPDRIVE = 6
CONST ID_APPCOST = 7
CONST ID_APPFREE = 8
CONST ID_WINDRIVE = 9
CONST ID_WINCOST = 10
CONST ID_WINFREE = 11
CONST ID_APPDST = 12
CONST ID_CECIRQ1 = 13
CONST ID_CECPORT1 = 14
CONST ID_CECIRQ2 = 15
CONST ID_CECPORT2 = 16
CONST ID_HPSELCODE1= 17
CONST ID_HPSELCODE2= 18
GLOBAL szAppDst$ ''Default destination directory.
GLOBAL szDlgDst$ ''Default dlg destination directory.
GLOBAL szDllDst$ ''Default dll destination directory.
GLOBAL szInsDst$ ''Default ins destination directory.
GLOBAL szPrgDst$ ''Default prg destination directory.
GLOBAL szWinDrive$ ''Windows drive letter.
GLOBAL szInf$ ''ATEasy.INF path
GLOBAL szSrcDir$
''Dialog list symbol names
GLOBAL szDlgChecks$ ''"ON" or "OFF" for each chechbox
GLOBAL szDlgTexts$ ''text for each IDC_TEXTx
GLOBAL szAppNeedsDrv$ ''Option list costs per drive
GLOBAL szDrivers$ ''All ATEasy.Drivers keys
GLOBAL szDriversSel$ ''"ON" or "OFF" for each driver.x
GLOBAL szDriversNeedsDrv$ ''Option list costs per drive
GLOBAL szExamples$ ''All ATEasy.Examples keys
GLOBAL szExamplesSel$ ''"ON" or "OFF" for each example.x
GLOBAL szExamplesNeedsDrv$ ''Option list costs per drive
GLOBAL szExtraNeedsDrv$ ''List of extra costs to add per drive
GLOBAL szTmp$
GLOBAL szBigList$ ''List of option files cost calc results (boolean)
DECLARE SUB AddOptFilesToCopyList (nMode%)
DECLARE SUB RecalcOptFiles (nMode%)
DECLARE SUB RecalcPath
DECLARE SUB SetDriveStatus
DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
DECLARE SUB GetCurrentDirectories
''*****************************************************************************
'' _INIT
''*****************************************************************************
_INIT:
szSrcDir$=GetSymbolValue("STF_SRCDIR")
i%=SetBeepingMode(1)
SetAbout "ATEasy Setup", "Version 2.0"
szCuiDll$ = "mscuistf.dll" ''custom user interface dll
szHelpProc$ = "FHelpDlgProc" ''Help dialog procedure
SetBitmap szCuiDll$, LOGO
szInf$ = GetSymbolValue("STF_SRCINFPATH")
IF szInf$ = "" THEN
szInf$ = GetSymbolValue("STF_CWDDIR") + "ATEASY.INF"
END IF
SetTitle GetIniKeyString(szInf$, "Data", """Title""")
ReadInfFile szInf$
''*** IDD_CUSTINST list symbols
szDlgChecks$ = "szDlgChecks"
szDlgTexts$ = "szDlgTexts"
szAppNeedsDrv$ = "szAppNeedsDrv"
szDrivers$ = "szDrivers"
szDriversSel$ = "szDriversSel"
szDriversNeedsDrv$ = "szDriversNeedsDrv"
szExamples$ = "szExamples"
szExamplesSel$ = "szExamplesSel"
szExamplesNeedsDrv$ = "szExamplesNeedsDrv"
szExtraNeedsDrv$ = "szExtraNeedsDrv"
szTmp$ = "szTmp"
szBigList$ = "szBigList"
''*** Init lists
FOR i% = 1 TO 5 STEP 1
AddListItem szDlgChecks$, "OFF"
NEXT i%
FOR i% = ID_APP TO ID_HPSELCODE2 STEP 1
AddListItem szDlgTexts$, ""
NEXT i%
FOR i% = 1 TO 26 STEP 1
AddListItem szAppNeedsDrv$, "0"
AddListItem szDriversNeedsDrv$, "0"
AddListItem szExamplesNeedsDrv$, "0"
AddListItem szExtraNeedsDrv$, "0"
NEXT i%
FOR i% = 1 TO 3 STEP 1
AddListItem szBigList$, ""
NEXT i%
MakeListFromSectionKeys szDrivers$, "ATEasy.Drivers"
FOR i% = 1 TO GetListLength(szDrivers$) STEP 1
AddListItem szDriversSel$, "ON"
NEXT i%
MakeListFromSectionKeys szExamples$, "ATEasy.Examples"
FOR i% = 1 TO GetListLength(szExamples$) STEP 1
AddListItem szExamplesSel$, "ON"
NEXT i%
''*** Get szWinDrive, szApp and current setup state
szWinDrive$ = UCASE$(MID$(GetWindowsDir(), 1, 1))
szAppDst$ = szWinDrive$ + ":\ATEASY"
sz$ = MakePath(GetSymbolValue("STF_SRCDIR"), "ATEASY.EXE")
sz1$= "ON"
IF DoesFileExist(sz$, femExist) THEN
sz1$ = "OFF"
ReplaceListItem szDlgChecks$, 1, ""
szAppDst$ = GetSymbolValue("STF_SRCDIR")
ELSE
GetLocalHardDrivesList szTmp$
FOR i% = 1 TO GetListLength(szTmp$) STEP 1
sz$ = FindFileInTree("ATEASY.EXE", GetListItem(szTmp$, i%) + ":\")
IF sz$ <> "" THEN
szAppDst$ = MID$(sz$, 1, LEN(sz$) - 11)
IF LEN(szAppDst$) = 2 THEN
szAppDst$=szAppDst$+"\"
ENDIF
WHILE 1
SetSymbolValue "szDlgInfo", szAppDst$
MessageBeep 0
sz$ = UIStartDlg(szCuiDll$, IDD_UPGRADE, "FInfoDlgProc", IDD_APPHELP, szHelpProc$)
IF sz$ = "CONTINUE" THEN
UIPop 1
RemoveSymbol "szDlgInfo"
EXIT FOR
END IF
GOSUB _ASKQUIT
WEND
END IF
NEXT i%
END IF
GetCurrentDirectories
''*** set variables to current state
IF sz1$ <> "OFF" THEN
FOR i% = ID_APP TO ID_VXI STEP 1
ReplaceListItem szDlgChecks$, i%, sz1$
NEXT i%
END IF
ReplaceListItem szDlgTexts$, ID_GPIB, "None"
ReplaceListItem szDlgTexts$, ID_VXI, "None"
sz$=MakePath(GetWindowsDir(),"ATEASY.INI")
sz1$="GpibDrv"
IF DoesIniSectionExist(sz$, sz1$) THEN
ReplaceListItem szDlgTexts$, ID_CECPORT1, GetIniKeyString(sz$, sz1$, "CECPort1")
ReplaceListItem szDlgTexts$, ID_CECPORT2, GetIniKeyString(sz$, sz1$, "CECPort2")
ReplaceListItem szDlgTexts$, ID_CECIRQ1, GetIniKeyString(sz$, sz1$, "CECIrq1")
ReplaceListItem szDlgTexts$, ID_CECIRQ2, GetIniKeyString(sz$, sz1$, "CECIrq2")
ReplaceListItem szDlgTexts$, ID_HPSELCODE1, GetIniKeyString(sz$, sz1$, "HPSelectCode1")
ReplaceListItem szDlgTexts$, ID_HPSELCODE2, GetIniKeyString(sz$, sz1$, "HPSelectCode2")
ELSE
ReplaceListItem szDlgTexts$, ID_CECPORT1, "0x2B8"
ReplaceListItem szDlgTexts$, ID_CECPORT2, "0x2A8"
ReplaceListItem szDlgTexts$, ID_CECIRQ1, "7"
ReplaceListItem szDlgTexts$, ID_CECIRQ2, "7"
ReplaceListItem szDlgTexts$, ID_HPSELCODE1, "7"
ReplaceListItem szDlgTexts$, ID_HPSELCODE2, "8"
ENDIF
''*** display status
RecalcPath
SetDriveStatus
''*****************************************************************************
'' _CUSTINST
''*****************************************************************************
_CUSTINST:
''*** Display IDD_CUSTINST dialog
sz$ = UIStartDlg(szCuiDll$, IDD_CUSTINST, "FCustInstDlgProc",